Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

removes a validation to consider universal bundle ids #19

Merged
merged 1 commit into from
May 24, 2024

Conversation

omarzl
Copy link
Contributor

@omarzl omarzl commented May 23, 2024

Hello! I am setting up an example workflow with sign-in tool 😄

While creating a new provisioning profile I had this error:

Error: [iTunesConnectServiceImp] Unable to determine iTunesConnect API ID for bundle identifier
- Bundle Identifier: com.omarzl.bazel.sample
- Platform: IOS

I added a print for listBundleIDsResponse.data and I found out that the bundle id has the platform type UNIVERSAL 🤯:

[SignHereLibrary.ListBundleIDsResponse.BundleId(id: "XXXX", type: "bundleIds", attributes: SignHereLibrary.ListBundleIDsResponse.BundleId.Attributes(name: "Bazel Sample", identifier: "com.omarzl.bazel.sample", platform: "UNIVERSAL"))]

I temporary removed the queryItems in the request to list all my bundle ids and I found out that I have these 3 types: IOS, MAC_OS and UNIVERSAL.

I went to ASC and I discovered that it doesn't allow you to select the platform, it automatically sets all of them. So my guess is that all new bundle ids are now UNIVERSAL, and old ones still preserve the IOS/MAC_OS types 🤔

Screenshot 2024-05-23 at 16 16 52

Fix:
Since the network call already has a constraint in the platform filter (Sources/SignHereLibrary/Services/iTunesConnectService.swift:241):

.init(name: "filter[platform]", value: "IOS")

I think that the best solution could be to remove this validation to support these UNIVERSAL bundle ids.

After removing this line, the provisioning profile was created 🎉

@omarzl
Copy link
Contributor Author

omarzl commented May 23, 2024

I debug a little bit more and I see that I have a bundle id obtained from the API that has the platform IOS but in ASC it shows all the platforms:
iOS, iPadOS, macOS, tvOS, watchOS, visionOS

The same applies to a bundle id with the platform MAC_OS in the API but in ASC it shows all of them.
Actually in ASC all my bundle ids show all the platforms

And the docs for the API doesn't mention nothing about the UNIVERSAL type https://developer.apple.com/documentation/appstoreconnectapi/bundleidplatform

Copy link
Collaborator

@tinder-maxwellelliott tinder-maxwellelliott left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks

@tinder-maxwellelliott tinder-maxwellelliott merged commit 2036d19 into Tinder:main May 24, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants